/* 
	各种环境check方法：
		1.支付宝浏览器 checkAlipay
		2.支付宝小程序 checkAlipayApp
		3.平台app checkApp
		4.ios浏览器 checkIos
		5.安卓浏览器 checkAndroid
		6.微信浏览器 checkWeixin
		7.微信小程序 checkWeixinApp
		8.获取APP版本号 getAppVersion
		9.获取APP ticket getAppTicket
*/

// 支付宝浏览器
const checkAlipay = function() {
	if (navigator.userAgent.toLowerCase().indexOf('alipayclient') > -1) {
		return true
	} else {
		return false
	}
}

// 支付宝小程序
const checkAlipayApp = function() {
	if (navigator.userAgent.toLowerCase().indexOf('alipayclient') > -1 && (navigator.userAgent.toLowerCase().indexOf('miniprogram') > -1 || 
	navigator.userAgent.toLowerCase().indexOf('alipayide/webview') > -1 )) {
		return true
	} else {
		return false
	}
}

// 平台app
const checkApp = function() {
	if (/(pigcmso2oreallifeapp)/.test(navigator.userAgent.toLowerCase())) {
		return true
	} else {
		return false
	}
}

// ios浏览器
const checkIos = function() {
	if (/(iphone|ipad|ipod)/.test(navigator.userAgent.toLowerCase())) {
		return true
	} else {
		return false
	}
}

// 安卓浏览器
const checkAndroid = function() {
	if (/(android)/.test(navigator.userAgent.toLowerCase())) {
		return true
	} else {
		return false
	}
}

// 微信浏览器
const checkWeixin = function() {
	if (/(micromessenger)/.test(navigator.userAgent.toLowerCase())) {
		return true
	} else {
		return false
	}
}

// 微信小程序
const checkWeixinApp = function(){
	if(window.__wxjs_environment === 'miniprogram' || (checkWeixin() && /(miniprogram)/.test(navigator.userAgent.toLowerCase()))){
		return true;
	}else{
		return false;
	}
}

// 获取APP版本号
const getAppVersion = function(){
	var reg = /versioncode=(.*?),/;
	var arr = reg.exec(navigator.userAgent.toLowerCase());
	if(arr == null){
		return '85';
	}else{
		return arr[1];
	}
}

const getAppTicket = function () {
    var reg = /ticket=(.*?),/
    var arr = reg.exec(navigator.userAgent)
    if (arr == null) {
      return ''
    } else {
      return arr[1]
    }
}

export default {
	checkAlipay,
	checkAlipayApp,
	checkApp,
	checkIos,
	checkAndroid,
	checkWeixin,
	checkWeixinApp,
	getAppVersion,
	getAppTicket
}